A virtual machine (VM) is a software implementation of a physical machine such as a computer system. A virtual machine executes program code like a physical computer system. A host computing system is a physical computing system that runs a hypervisor. The hypervisor runs one or more “guest” virtual machines. In the case where the host computing system executes more than one virtual machine using a hypervisor, the resources of each virtual machine, e.g., random access memory, central processing unit, etc., may be isolated from the resources of each other virtual machine. In other aspects, the virtual machines may not be completely isolated from one another in that two or more virtual machines may communicate over a network, access a common file share, or the like. In any case, by running a hypervisor, the host computing system has the ability to execute multiple, different virtual machines and/or multiple instances of one or more virtual machines concurrently. This ability allows the host computing system to execute virtual machines that use different instruction sets and/or operating systems at the same time.
Virtual machines require credentials for the same reasons that their physical computer system counterparts require credentials. For example, virtual machines may require credentials to access third party systems such as applications, databases, or the like. Unlike physical computing systems, virtual machines also must be managed by tools that perform operations on behalf of the virtual machines. The credentials utilized by the virtual machine must be available to the virtual machine during execution. If, however, the credentials are managed by the virtual machine itself, such credentials are not available to other entities when the virtual machine is not executing.